﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Input;
using Super_Wall_Breaker.Sources.GameEngine;

namespace Super_Wall_Breaker.Sources.TeamElements.PlayersControls
{
    /// <summary>
    /// This class define the player controls.
    /// </summary>
    public abstract class ControlsState
    {
        protected PlayerIndex _playerIndex;
        protected Controls _previousEntry; // usefull to detect "double entry"

        /// <summary>
        /// Initializes a new instance of the <see cref="ControlsState"/> class.
        /// </summary>
        /// <param name="index">The index of the player.</param>
        public ControlsState(PlayerIndex index)
        {
            this._playerIndex = index;
        }


        /// <summary>
        /// Gets the state of the controls of the player.
        /// </summary>
        /// <returns></returns>
        public abstract Controls GetState();
    }
}
